Cloud Mapの主要機能であるサービスのカスタム属性編集がコンソールでできるようになりました!
みなさん、Cloud Map、使ってますか?
re:Invent 2018において颯爽と登場したサービスで、クラウド上のありとあらゆるリソースに対して任意の名前をつけることで、より柔軟に各サービスの接続を管理できる渋い機能なのですが、そのCloudMapに久しぶりにアップデートがやってきました!
AWS Cloud Map が AWS コンソールでのカスタムサービスのインスタンスの属性の編集をサポート
機能拡充というよりは、今までAPIのみで提供されていた機能がWebコンソールでもできるようになったよ!ということなのですが、進化は進化。これを機会にCloud Mapの奥深い世界に踏み込んでくれる人が増えると、隠れCloud Mapファンのハマコーが喜びます。
喜びます。
喜ぶだけ…!? ( ゚д゚) ガタッ / ヾ __L| / ̄ ̄ ̄/_ \/ /
Cloud Mapとは?
クラウドリソースの検出を柔軟にできるようにするサービスです。クラウドで利用する各サービスへの接続情報(AWSのリソースARN、HTTPアクセスするエンドポイントURIなど)を、一括管理しできるサービスです。
概念図は、公式のこちらがわかりやすい。AWSのいろんなリソースに、任意の名前でアクセスする雰囲気がわかりますでしょうか。
引用元:https://aws.amazon.com/jp/blogs/news/new-application-integration-with-aws-cloud-map-for-service-discovery/
参考資料
AWS公式のサービスページ。
AWS Cloud Map(マイクロサービス向けのアプリケーションリソースレジストリ)| AWS
公式開発者向けドキュメント。
What Is AWS Cloud Map? - AWS Cloud Map
自分が書いた、概説記事。コンセプトと具体的な機能について記載しているので、よければこちらもご参考に。
詳細解説「AWS Cloud Map」とは #reinvent | Developers.IO
今回のアップデートの何が嬉しいのか?
「AWS コンソールでカスタムサービスのインスタンスの属性の編集ができるようになった」です。Cloud Mapは実際にサービスに紐づくインスタンスを検出するときに、discover-instances
APIを使います。
$ aws servicediscovery discover-instances --namespace-name hamako9999.com --service-name payments --query-parameters ver=1.0,env=stg
このとき、--query-parameters
で指定した属性が紐づくリソースが返ってくるので、この属性を予め各種リソースにつけておくことで、その属性に紐づくリソース一式を簡単に取得できるわけです。
この属性の編集(追加、変更、削除)が、Webコンソールでできるようになった!というわけです。
Webコンソール上での変更点
[Register service instance]画面の一番下で、カスタム属性が編集できるようになっています。
今までは、ここをコンソールで設定する方法がなく、インスタンス登録時に属性を設定する場合は、別途CLIやSDKなどを使ってのAPI利用しか方法がありませんでした。
Cloud Map、みんなどんどん使おうぜ!
アップデートの内容自体は、非常に地味でしたね。ただ、リソースへの属性の付与はCloud Mapのキモの機能ということがおわかりいただけましたでしょうか。それがWebコンソールで編集できるのは、管理上の手間を減らす効果があります。
実は、CloudMapのDocument Historyをみると、履歴がありません。
ドキュメント履歴がない→APIに変更がない→機能拡張がないということで、自分としては非常に寂しく思っているのですが、使い方次第では非常に応用範囲が広いサービスなので、今回のアップデートをきっかけに、Cloud Mapの活用方法について思いを馳せてみるのはどうでしょうか。
それでは、今日はこのへんで。濱田(@hamako9999)でした。